﻿// Copyright © Olaf Kober, 2013-05

using System;
using System.Linq;
using Amarok.Agents;


namespace $rootnamespace$
{
	/// <summary>
	/// This type implements a subsystem.
	/// 
	/// Subsystems are primarily used to implement startup and loading logic by spawning agents and optionally 
	/// loading other subsystems, which again can spawn agents and load other subsystems.
	/// </summary>
	public sealed class $fileinputname$Subsystem : Subsystem<MyEnvironment>
	{
		#region ++ Public Interface ++

		/// <summary>
		/// Initializes a new instance.
		/// </summary>
		/// 
		/// <param name="environment">
		/// The runtime environment for this subsystem.</param>
		/// 
		/// <exception cref="ArgumentNullException">
		/// A null reference was passed to a method that did not accept it as a valid argument.</exception>
		public $fileinputname$Subsystem(MyEnvironment environment)
			: base(environment)
		{
		}

		#endregion

		#region ## Overridable Methods ##

		/// <summary>
		/// </summary>
		protected override void OnLoad()
		{
			base.OnLoad();
		}

		/// <summary>
		/// </summary>
		protected override void OnCleanup()
		{
			base.OnCleanup();
		}

		#endregion

	}
}
